#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2021/6/14 13:10
# @Author  : huidong.bai
# @File    : printDemo2.py
# @Software: PyCharm

import sys
from PyQt5.QtWidgets import QWidget, QPushButton, QLineEdit, QHBoxLayout, QVBoxLayout, QApplication
from pyqtgraph import PlotWidget, mkPen


class MyPlotWidget(PlotWidget):
    def __init__(self):
        super().__init__()
        # 设置图表标题
        self.setTitle("气温趋势", color='008080', size='12pt')

        # 设置上下左右的label
        self.setLabel("left", "气温(摄氏度)")
        self.setLabel("bottom", "时间")
        # 背景色改为白色
        self.setBackground('w')


class MainWindow(QWidget):
    def __init__(self):
        super().__init__()

        self.setWindowTitle('pyqtgraph作图示例')

        # 创建 PlotWidget 对象
        self.pw = MyPlotWidget()

        hour = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
        temperature = [30, 32, 34, 32, 33, 31, 29, 32, 35, 70]

        # hour 和 temperature 分别是 : x, y 轴上的值  线条颜色
        self.pw.plot(hour, temperature, pen=mkPen('b'))

        # 创建其他Qt控件
        okButton = QPushButton("OK")
        lineEdit = QLineEdit('点击信息')
        # 水平layout里面放 edit 和 button
        hbox = QHBoxLayout()
        hbox.addWidget(lineEdit)
        hbox.addWidget(okButton)

        # 垂直layout里面放 pyqtgraph图表控件 和 前面的水平layout
        vbox = QVBoxLayout()
        vbox.addWidget(self.pw)
        vbox.addLayout(hbox)

        # 设置全局layout
        self.setLayout(vbox)


if __name__ == '__main__':
    app = QApplication(sys.argv)
    main = MainWindow()
    main.show()
    sys.exit(app.exec())
